package cn.aopmin.common;

/**
 * 使用ThreadLocal保存数据源名称
 *
 * @author 白豆五
 * @since 2024/7/4
 */
public class DataSourceContextHolder {
    private static final ThreadLocal<String> contextHolder = new ThreadLocal<>();

    // 把数据源名称绑定到当前线程上
    public static void setDataSource(String dataSourceName) {
        contextHolder.set(dataSourceName);
    }

    // 获取当前线程上的数据源名称
    public static String getDataSource() {
        return contextHolder.get();
    }

    // 清除数据源名称
    public static void clearDataSource() {
        contextHolder.remove();
    }
}